Skip to main content

Courses

Courses lay one level of abstraction above sections in the academic hierarchy at UTD. A course represents a class offered by a school at UTD.

A Course should not be confused with a Section which is the actual instantiation of a Course with a professor and dedicated meeting times.A course can have multiple sections associated with it every semester. An example of a course would be ECS1100.

This data will include important pieces of information that a relevant to every section of the course like its prerequisites and the number of credit hours. All of the attributes associated with a course are as follows:

Properties

NameTypeRequiredRestrictionsDescription
_idstringtruenoneThe primary key associated with a course
course_numberstringtruenoneThe course's official number
subject_prefixstringtruenoneThe course's subject prefix
titlestringtruenoneThe course's title
descriptionstringtruenoneThe course's description
schoolstringtruenoneThe course's school
credit_hoursstringtruenoneThe number of credit hours awarded by successful completion of the course
class_levelstringtruenoneThe level of education that this course course corresponds to
activity_typestringtruenoneThe type of class this course corresponds to
gradingstringtruenoneThe grading status of this course
internal_course_numberstringtruenoneThe internal (university) number used to reference this course
prerequisitesCollectionRequirementfalsenoneA Collection Requirement object containing a list of the courses that must be taken before this course
corequisitesCollectionRequirementfalsenoneA Collection Requirement object containing a list of the courses that must be taken before or alongside this course
lecture_contact_hoursstringtruenoneThe weekly contact hours in lecture for a course
laboratory_contact_hoursstringtruenoneThe weekly contact hours in laboratory for a course
offering_frequencystringtruenoneThe frequency of offering a course. The meanings of each letter can be found in the UTD Course Policies page. Example: "S", "Y", "T", "R" course

Querying a Course

There are two main ways to query for a course:

  1. By Query Paramters
  2. By ID

Each of these methods has its own API endpoint to get the requested data.

GET /course

The default endpoint for /course returns a list of courses matching the set of query parameters provided.

Below is a list of all of the parameters that can be used to refine your query:

Parameters

NameInTypeRequiredDescription
course_numberquerystringfalseThe course's official number
subject_prefixquerystringfalseThe course's subject prefix
titlequerystringfalseThe course's title
descriptionquerystringfalseThe course's description
schoolquerystringfalseThe course's school
credit_hoursquerystringfalseThe number of credit hours awarded by successful completion of the course
class_levelquerystringfalseThe level of education that this course course corresponds to
activity_typequerystringfalseThe type of class this course corresponds to
gradingquerystringfalseThe grading status of this course
internal_course_numberquerystringfalseThe internal (university) number used to reference this course
lecture_contact_hoursquerystringfalseThe weekly contact hours in lecture for a course
offering_frequencyquerystringfalseThe frequency of offering a course

Example responses

200 Response

[
{
"_id": "string",
"course_number": "string",
"subject_prefix": "string",
"title": "string",
"description": "string",
"school": "string",
"credit_hours": "string",
"class_level": "string",
"activity_type": "string",
"grading": "string",
"internal_course_number": "string",
"prerequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"corequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"lecture_contact_hours": "string",
"laboratory_contact_hours": "string",
"offering_frequency": "string"
}
]

GET /course/{id}

This endpoint returns a single Course object with a primary key matching {id}.

Parameters

This endpoint accepts a single route paramter: id

Parameters

NameInTypeRequiredDescription
idpathstringtrueID of the course to get

Example responses

200 Response

{
"_id": "string",
"course_number": "string",
"subject_prefix": "string",
"title": "string",
"description": "string",
"school": "string",
"credit_hours": "string",
"class_level": "string",
"activity_type": "string",
"grading": "string",
"internal_course_number": "string",
"prerequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"corequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"lecture_contact_hours": "string",
"laboratory_contact_hours": "string",
"offering_frequency": "string"
}